package model

import (
	"gorm.io/gorm"
	"time"
)

type Article struct {
	ID        uint           `gorm:"primaryKey;autoIncrement" json:"id"`                           // 文章ID，主键，自增
	Title     string         `gorm:"column:article_title;type:varchar(100);not null" json:"title"` // 文章标题
	AuthorID  uint           `gorm:"column:author_id;not null" json:"author_id"`                   // 作者ID
	Content   string         `gorm:"column:content;type:longtext;not null" json:"content"`         // 文章内容
	CreatedAt time.Time      `gorm:"column:create_at;autoCreateTime" json:"create_at"`             // 创建时间
	UpdatedAt time.Time      `gorm:"column:update_at;autoUpdateTime" json:"update_at"`             // 修改时间
	DeletedAt gorm.DeletedAt `gorm:"column:delete_at" json:"delete_at"`                            // 删除时间（软删除，可为空）
}

func (m *Article) TableName() string {
	return "articles"
}
